package com.krubi.dao.hibernate;

import org.hibernate.Query;

import com.krubi.dao.UsuarioDao;
import com.krubi.model.Usuario;

public class UsuarioDaoImpl extends BaseHibernateDao<Usuario, Long> implements UsuarioDao
{
	public UsuarioDaoImpl() 
	{
		super(Usuario.class);
	}
	
	public Usuario buscarPorNombreDeUsuario(String nombreUsuario)
	{
		Query query = getSession().getNamedQuery(Usuario.BUSCAR_POR_NOMBRE_DE_USUARIO);
		query.setString("nombre", nombreUsuario);
		return  (Usuario) query.uniqueResult();
	}
	
	public void borrarUsuarioPorNombreDeUsuario(String nombreUsuario)
	{
		Query query = getSession().getNamedQuery(Usuario.BORRAR_POR_NOMBRE_DE_USUARIO);
        query.setString("nombre", nombreUsuario);
		query.executeUpdate();
	}
	
	public void borrarUsuarioPorEmail(String email)
	{
		Query query = getSession().getNamedQuery(Usuario.BORRAR_POR_EMAIL);
        query.setString("email", email);
		query.executeUpdate();
	}
}
